4040
4141
4242async  def  get_inoreader_item_async (
43-     data : Optional [Dict ] =  None ,
44-     trigger : bool  =  False ,
45-     params : Optional [Dict ] =  None ,
46-     # filters: Optional[Dict] = None, 
43+          data : Optional [Dict ] =  None ,
44+          trigger : bool  =  False ,
45+          params : Optional [Dict ] =  None ,
46+          # filters: Optional[Dict] = None, 
4747) ->  None :
4848    stream_id  =  None 
4949    use_inoreader_content  =  True 
@@ -76,19 +76,19 @@ async def get_inoreader_item_async(
7676
7777
7878async  def  process_inoreader_data (
79-     data : list ,
80-     use_inoreader_content : bool ,
81-     telegram_channel_id : Union [int , str ] =  default_telegram_channel_id ,
82-     stream_id : str  =  None ,
79+          data : list ,
80+          use_inoreader_content : bool ,
81+          telegram_channel_id : Union [int , str ] =  default_telegram_channel_id ,
82+          stream_id : str  =  None ,
8383):
8484    for  item  in  data :
8585        url_type_item  =  await  get_url_metadata (item ["aurl" ])
8686        url_type_dict  =  url_type_item .to_dict ()
8787        logger .debug (f"ino original: { use_inoreader_content }  )
8888        if  (
89-             use_inoreader_content  is  True 
90-             or  url_type_dict ["content_type" ] ==  "unknown" 
91-             # or url_type_dict["source"] == "zhihu" 
89+                  use_inoreader_content  is  True 
90+                  or  url_type_dict ["content_type" ] ==  "unknown" 
91+                  # or url_type_dict["source"] == "zhihu" 
9292        ):
9393            is_video  =  url_type_dict ["content_type" ] ==  "video" 
9494            content_type  =  url_type_dict ["content_type" ] if  is_video  else  "social_media" 
@@ -118,6 +118,10 @@ async def process_inoreader_data(
118118            )
119119
120120
121+ async  def  get_inoreader_webhook_data (data : dict ):
122+     result  =  data ["items" ]
123+     return  result 
124+ 
121125# @router.post("/", dependencies=[Security(verify_api_key)]) 
122126# async def inoreader_repost_webhook(request: Request, background_tasks: BackgroundTasks): 
123127#     data = await request.json() 
@@ -142,3 +146,11 @@ async def inoreader_trigger_webhook(request: Request):
142146    params  =  request .query_params 
143147    await  get_inoreader_item_async (trigger = True , params = params )
144148    return  "ok" 
149+ 
150+ 
151+ @router .post ("/webhook" , dependencies = [Security (verify_api_key )]) 
152+ async  def  inoreader_tag_webhook (request : Request ):
153+     data  =  await  request .json ()
154+     data  =  await  Inoreader .process_items_data (data )
155+     await  process_inoreader_data (data = data , use_inoreader_content = True , telegram_channel_id = default_telegram_channel_id )
156+     return  "ok" 
0 commit comments