Wannian An

20 papers B 1Journal 17Unranked 2
YearRankTypeTitle / Venue / Authors
2026 J jnl
IEEE Trans. Commun.
Yunlu Wang, Chen Dong, Wannian An, Zhicheng Bao, Hongchao Jiang, Yaping Sun, Mengying Sun, Xiaodong Xu
2026 J jnl
IEEE Trans. Wirel. Commun.
Wannian An, Chen Dong, Haotai Liang, Xiaodong Xu, Rui Meng, Ping Zhang
2025 J jnl
IEEE Internet Things J.
Haotai Liang, Chen Dong, Wannian An, Zhicheng Bao, Xiaodong Xu, Rui Meng
2025 J jnl
IEEE Internet Things J.
Lei Teng, Wannian An, Chen Dong, Xiaodong Xu
2024 J jnl
IEEE Internet Things J.
Wannian An, Zhicheng Bao, Haotai Liang, Chen Dong, Xiaodong Xu
2024 J jnl
IEEE Internet Things J.
Mengying Chen, Yang Liu, Chen Dong, Wannian An, Xiaodong Xu, Ping Zhang
2024 conf
ICC Workshops
Lei Teng, Wannian An, Chen Dong, Xiaoqi Qin, Xiaodong Xu
2024 B conf
WCNC
Hanyu Liu, Lei Teng, Wannian An, Xiaoqi Qin, Chen Dong, Xiaodong Xu
2023 conf
ICCC Workshops
Qikun Yin, Haotai Liang, Zhicheng Bao, Wannian An
2023 J jnl
CoRR
Wannian An, Zhicheng Bao, Haotai Liang, Chen Dong, Xiaodong Xu
2023 J jnl
IEEE Trans. Veh. Technol.
Mengying Chen, Wannian An, Yang Liu, Chen Dong, Xiaodong Xu, Boxiao Han, Ping Zhang
2023 J jnl
IEEE Open J. Commun. Soc.
Lei Teng, Wannian An, Chen Dong, Xiaodong Xu, Boxiao Han
2023 J jnl
IEEE Internet Things J.
Wannian An, Chen Dong, Xiaodong Xu, Chao Xu, Shujun Han, Lei Teng
2023 J jnl
CoRR
Lei Teng, Wannian An, Chen Dong, Xiaoqi Qin, Xiaodong Xu
2023 J jnl
CoRR
Haotai Liang, Zhicheng Bao, Wannian An, Chen Dong, Xiaodong Xu
2023 J jnl
CoRR
Hanyu Liu, Lei Teng, Wannian An, Xiaoqi Qin, Chen Dong, Xiaodong Xu
2022 J jnl
CoRR
Mengying Chen, Wannian An, Yang Liu, Chen Dong, Xiaodong Xu, Boxiao Han, Ping Zhang
2022 J jnl
CoRR
Lei Teng, Wannian An, Chen Dong, Xiaodong Xu, Boxiao Han
2022 J jnl
CoRR
Wannian An, Chen Dong, Xiaodong Xu, Chao Xu, Shujun Han, Lei Teng
2020 J jnl
Sensors
Wannian An, Peichang Zhang, Jiajun Xu, Huancong Luo, Lei Huang, Shida Zhong
redb/utils/push_to_elastic.py
← Index redb/utils/push_to_elastic.py python
import json
import os
#from redb.settings import elasticsearch as es
from elasticsearch import Elasticsearch
from dataclasses import asdict
from dotenv import load_dotenv

class Utils():
    """
    Utility class for pushing

    """
    @staticmethod
    def push_to_elastic(sample_dict):
        """
        Pushes the sample_dict to elastic search
        """
        load_dotenv()
        ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
        ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
        ELASTIC_USER = os.getenv("ELASTIC_USER")
        ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
        ELASTIC_BINARIES_COLLECTION = os.getenv(
            "ELASTIC_BINARIES_COLLECTION", "redb_test"
        )
        es = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )

        try:
            dict_dump = json.dumps(sample_dict)
        except Exception as e:
            print(f"Error: {e}")
            return False
        elastic = es.index(index=ELASTIC_BINARIES_COLLECTION, body=dict_dump)
        return True
    
    def push_to_index(sample_dict, index_name):
        """
        Pushes the sample_dict to elastic search
        """
        load_dotenv()
        ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
        ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
        ELASTIC_USER = os.getenv("ELASTIC_USER")
        ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
        ELASTIC_BINARIES_COLLECTION = index_name
        
        es = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )

        try:
            dict_dump = json.dumps(sample_dict)
        except Exception as e:
            print(f"Error: {e}")
            return False
        elastic = es.index(index=ELASTIC_BINARIES_COLLECTION, body=dict_dump)
        return True