Manuel du service d'abonnement
Présentation du service
Le service d'abonnement à la plateforme Weibo améliore l'efficacité des applications dans l'obtention de données Weibo. Selon les conditions d'abonnement spécifiées par l'application, telles que les mots-clés, les utilisateurs, les noms de domaine, etc., la plateforme transmet activement les données nouvellement générées à l'application en temps réel, et l'application n'a pas besoin d'interroger l'interface de requête.
Les avantages des services d'abonnement sont les suivants :
1. Transmettez de nouvelles données aux applications en temps réel ;
2. Économisez la surcharge du réseau ;
3. efficacité des interfaces d'accès aux applications ;
Abonnés :
Les développeurs peuvent spécifier jusqu'à 10 000 utilisateurs. Lors de l'abonnement à Weibo, si le Weibo est publié par l'utilisateur spécifié, il sera poussé ; lors de l'abonnement aux commentaires, les commentaires publiés par l'utilisateur spécifié sur Weibo (et non les commentaires publiés par l'utilisateur spécifié) seront poussés s'ils ne sont pas spécifiés ; , il n'y a pas une telle restriction.
Mots-clés d'abonnement :
Les développeurs peuvent spécifier jusqu'à 20 000 mots-clés. Lors de l'abonnement à Weibo, si le Weibo contient le mot-clé spécifié, il sera poussé ; lors de l'abonnement aux commentaires, si le Weibo correspondant au commentaire contient ce mot-clé, ou si le commentaire lui-même contient ce mot-clé, il sera poussé s'il n'est pas spécifié ; , il n'y aura pas de telle limite.
Remarque : lorsque le contenu Weibo transféré ne contient pas ce mot-clé, mais que le Weibo d'origine le fait, il ne sera pas poussé dans ce cas
Nom de domaine d'abonnement :
Les développeurs peuvent spécifier jusqu'à 20 noms de domaine. Lors de l'abonnement à Weibo, si le lien original correspondant au lien court dans le Weibo se trouve sous le nom de domaine spécifié, il sera poussé lors de l'abonnement au commentaire, le commentaire correspondant au Weibo contenant le lien court et le lien original correspondant ; au nom de domaine spécifié sera poussé ; s'il n'est pas spécifié, il n'y a pas de telle restriction.
Application d'abonnement :
Les développeurs peuvent spécifier de pousser uniquement les données générées par l'application qui a généré l'abonnement. Si cela n'est pas spécifié, les données de toutes les applications seront poussées.
Type de média d'abonnement :
Cette condition ne peut être précisée que lors de l'abonnement à Weibo. Les développeurs peuvent spécifier les types d'original, transféré, vidéo, musique ou image. Ensuite, poussez le type de Weibo spécifié ; s'il n'est pas spécifié, il n'y a pas de telle restriction lors de l'abonnement aux commentaires, il n'y a pas de telle condition de filtrage.
Type de données d'abonnement :
Les développeurs peuvent spécifier de pousser Weibo ou commenter les données si cela n'est pas spécifié, Weibo sera poussé par défaut ;
Pourcentage d'abonnement :
Les développeurs peuvent spécifier le pourcentage de données qui répondent aux conditions d'abonnement ci-dessus. S'il n'est pas spécifié, 1 % des données qui remplissent les conditions seront poussées.
Plage horaire d'abonnement : Les développeurs peuvent spécifier l'heure de début et l'heure de fin du push. Le service push est prêt à l'heure de début spécifiée et se termine à l'heure de fin. Si elle n’est pas spécifiée, l’heure de début est par défaut l’heure de génération de l’abonnement et est toujours poussée. Lorsque le service push est prêt, les développeurs peuvent appeler l'interface pour se connecter et recevoir des données. Les étapes pour utiliser le service d'abonnement sont les suivantes : Les développeurs remplissent le formulaire de demande de service d'abonnement hors ligne, remplissent des informations telles que les conditions d'abonnement, et le personnel de la plateforme génère des abonnements en fonction des informations contenues dans le formulaire de demande. Chaque application peut avoir plusieurs abonnements. Les développeurs qui ont besoin d'essayer le service d'abonnement peuvent soumettre une candidature en ligne (voir le guide d'accès pour plus de détails) sans remplir de formulaire de candidature. Si vous sélectionnez Non pour "Mots clés d'abonnement" et "Utilisateur d'abonnement" dans le formulaire de demande de service d'abonnement, ignorez cette étape. Lorsque vous sélectionnez Oui, vous devez vous assurer que la liste d'abonnements par mot clé et la liste d'abonnements utilisateur ne sont pas vides. Abonnez-vous aux mots-clés et aux utilisateurs (si vous êtes déjà abonné aux mots-clés et aux utilisateurs, vous pouvez ignorer cette étape), demander l'interface : Subscribe/update_subscribe La longueur de chaque mot-clé ne peut pas dépasser 36 caractères chinois. Chaque mot-clé prend en charge la logique « ET » et « NON » en interne. Le « ET » logique est séparé par un « espace » : comme A B ; le « NON » logique est séparé par « espace - » : comme A -B. Lorsqu'il y a des guillemets doubles des deux côtés du mot-clé, cela signifie que le contenu du mot-clé correspond absolument et que l'opération logique n'est pas valide, comme : "A B", qui ne représente plus les logiques A et B. Le nombre total de sous-mots-clés séparés par des opérateurs logiques au sein de chaque mot-clé ne peut pas dépasser 1 000, et le nombre d'opérateurs logiques pour chaque abonnement ne peut pas dépasser 500. Les mots-clés auxquels vous souscrivez à chaque appel de l'interface ne peuvent excéder 20. Le nombre d'utilisateurs abonnés à chaque appel vers l'interface ne peut excéder 50. Le nombre total de mots-clés et d'utilisateurs pour chaque abonnement ne peut pas dépasser 20 000 et les abonnements répétés ne sont pas autorisés. La plate-forme Weibo définira certains mots-clés et utilisateurs dans un état protégé, et les mots-clés et utilisateurs protégés ne pourront pas être abonnés. Une fois qu'un mot-clé est protégé, les mots contenant ce mot-clé ne peuvent pas être abonnés. Les mots-clés abonnés et les données filtrées par mots-clés ne sont pas sensibles à la casse, simplifiés ou traditionnels. Si le développeur précise l'heure de début du push dans le formulaire de candidature, le service push de l'abonnement sera prêt à l'heure de début spécifiée, sinon spécifié, le service push sera prêt ; une fois l'abonnement généré. Si l'abonnement a été généré mais que le service push n'est pas prêt, l'état du push en arrière-plan de gestion des abonnements développeur affichera : En préparation si le service push est prêt, il affichera : Prêt . Ce n'est qu'à l'état prêt que l'application peut appeler l'interface pour se connecter et recevoir des données. Sinon, une erreur sera signalée lors de l'appel de l'interface. ● Pour vous abonner à Weibo, appelez l'interface : datapush/status ● Pour vous abonner aux commentaires, l'interface d'appel : datapush/comment Après une connexion réussie, l'interface transmettra Weibo ou commentera les données à l'adresse de connexion du développeur. Chaque donnée Weibo ou commentaire complète est renvoyée au format json, le codage UTF-8 est utilisé par défaut et est séparé par rn. La longueur maximale de chaque message de données est de 4 096 octets. Si le développeur ne précise pas l'heure de fin du push, le push continuera à être poussé ; si l'heure de fin est spécifiée, le push sera terminé à l'heure de fin du push spécifiée. Cela équivaut à l’expiration de cet abonnement et ne sera pas redémarré. L'application reçoit des données via l'interface de demande de connexion longue HTTP /datapush/status ou /datapush/comment. Le paramètre subid (ID d'abonnement) doit être transmis pour indiquer à la plateforme quelles données d'abonnement transmettre. Si la demande est correcte, le résultat des données correspondant sera renvoyé. Si la requête est anormale, le message d'erreur correspondant sera renvoyé. Il existe cinq statuts de service : en préparation, prêt, activé, suspendu et terminé. L'abonnement a été généré mais n'a pas atteint l'heure de démarrage du push spécifiée par le développeur, et est en état de préparation (le développeur ne peut pas se connecter pour recevoir des données à ce moment). Si le développeur ne précise pas l'heure de démarrage du push, une fois l'abonnement généré, il n'y aura pas d'état de préparation et il entrera directement dans l'état prêt. L'abonnement est généré et l'heure de démarrage du push est arrivée, mais le développeur n'est pas connecté pour recevoir des données, il est donc dans un état prêt. Ou lorsque l'abonnement est généré, le développeur ne précise pas l'heure de démarrage du push et le développeur n'est pas connecté pour recevoir des données, le service est également dans un état prêt. Dans l'état prêt, le développeur se connecte pour recevoir des données et le service entre dans l'état activé. Lorsque l'application a des opérations illégales ou pour d'autres raisons, la plateforme suspend la fonction push de l'abonnement, le service sera transformé en état suspendu. Si le développeur ne précise pas l'heure de fin du push, le push continuera à être poussé ; si l'heure de fin est spécifiée, le push sera terminé à l'heure de fin du push spécifiée. Cela équivaut à l’expiration de cet abonnement et ne sera pas redémarré. Le service est terminé à ce moment-là Étapes d'utilisation
① Générer un abonnement :
② Définir les mots-clés d'abonnement et les utilisateurs :
L'IP demandée pour cette interface doit être une adresse IP dans la liste IP précisée lors de l'abonnement , sinon un message d'erreur sera renvoyé : Ip est limité. Lorsque seul le subid est transmis, les informations d'abonnement de l'abonnement sont renvoyées, y compris la liste de mots clés d'abonnement et la liste d'utilisateurs.
Chaque mot-clé est séparé par une virgule, et il existe une relation logique « OU » entre les mots-clés séparés par des virgules.
③ Service Push prêt :
④ Connexion de l'application et démarrage du push :
L'interface d'appel est la suivante :
Appel Java, voir exemple de code.
⑤ Application recevant des données :
Données de retour voir : exemple.
⑥ Fin du push : Instructions d'utilisation
Afin de soulager la pression sur le serveur, les données push de la plateforme seront déconnectées toutes les dix minutes. L'application doit être compatible et re-interface de demande de connexion longue HTTP, et peut apporter la valeur d'identifiant de la dernière déconnexion comme. la valeur du paramètre depuis_id, tel que : /datapush/status?subid=xxx&since_id=XXX. L'application peut obtenir en continu des données du point déconnecté. Par conséquent, l'application doit conserver l'identifiant lorsque le service est déconnecté comme valeur de paramètre de la requête suivante.
Étant donné que les données transmises par le service d'abonnement sont en temps réel, la plateforme ne conserve que cinq minutes de données. Si elle est déconnectée pendant plus de cinq minutes, le paramètre Since_id n'est plus pris en charge. Si Since_id est transmis, un. Un message d'erreur sera renvoyé : Param illégal depuis_id (depuis_id Illégal, dépasse le délai). Si Since_id n'est pas transmis, la plateforme filtrera les données qui remplissent les conditions parmi les 50 000 premières données à l'heure actuelle et les transmettra à l'utilisateur.
Lorsqu'une application rencontre des opérations illégales ou pour d'autres raisons, la plateforme suspendra la fonction de transmission de données de l'abonnement, c'est-à-dire qu'elle ne transmettra plus de données. Jusqu'à ce que le problème soit résolu, la plateforme peut redémarrer la fonction push. L'application nécessite une longue connexion HTTP pour redemander l'interface.
De plus, l'IP de l'interface de requête de l'application doit être une adresse IP dans la liste IP précisée lors de la souscription, sinon un message d'erreur sera renvoyé : Ip is limited (ip is limited). Description du statut
Dans le centre de gestion des développeurs, vous pouvez voir les différents statuts d'affichage du service, comme indiqué dans l'encadré rouge ci-dessous :
1) Préparation :
2) Prêt :
3) Activé :
4) Suspendu :
5) Terminé :