Position actuelle: Accueil> Derniers articles> PHP met en œuvre une solution complète pour l'entreprise Push Message Push

PHP met en œuvre une solution complète pour l'entreprise Push Message Push

M66 2025-07-02

Introduction à la poussée du message WeChat d'entreprise

Enterprise WeChat est un outil de communication pour les organisations d'entreprise, prenant en charge les interfaces API riches, adaptées à la communication rapide des messages internes, des rappels d'entreprise et des notifications système. En intégrant la fonction d'abonnement du message de l'entreprise WeChat, la poussée de messages ciblée aux employés ou aux services peut être réalisée.

Préparation: créer une application WeChat d'entreprise

Tout d'abord, vous devez créer une application auto-construite dans l'arrière-plan de WeChat Enterprise, enregistrer et conserver les informations clés suivantes:

  • ID d'entreprise (Corpid)
  • ID d'application (agentID)
  • Appliquer le secret (clé)

Installez la bibliothèque de dépendances requise

Afin de simplifier la demande HTTP et le processus de génération de jetons, il est recommandé d'installer les bibliothèques suivantes via le compositeur:

  • Guzzlehttp / Guzzle - Utilisé pour envoyer des demandes HTTP
  • Firebase / PHP-JWT - pour la génération et l'analyse des JWT

Comprendre la structure des messages de l'entreprise WeChat

L'interface d'envoi de message d'Enterprise WeChat doit suivre une structure de données spécifique. Voici un exemple de corps de demande standard:

 
{
  "touser": "UserID1|UserID2",
  "agentid": 1,
  "msgtype": "text",
  "text": {
    "content": "Contenu du message"
  },
  "safe": 0
}

Description du champ:

  • Touser : destinataire du message, plusieurs personnes utilisent "|" pour séparer
  • AgentID : ID de demande
  • msgtype : type de message, tel que "texte", "image", etc.
  • Texte : structure de contenu du message
  • SAFE : Est-ce un message confidentiel? 0 est normal et 1 est un cryptage

PHP implémente les appels d'interface

Voici un exemple complet de l'utilisation de PHP pour créer et appeler l'interface d'entreprise WeChat pour envoyer des messages:

 
require 'path/to/vendor/autoload.php';

use GuzzleHttp\Client;
use Firebase\JWT\JWT;

// Configuration de WeChat d'entreprise
$corpId  = 'entrepriseID';
$agentId = 'applicationID';
$secret  = 'application密钥';

function sendMsg($touser, $content) {
    global $corpId, $agentId, $secret;

    $data = [
        'touser'  => $touser,
        'agentid' => $agentId,
        'msgtype' => 'text',
        'text'    => [ 'content' => $content ],
        'safe'    => 0
    ];

    // générer JWT Token
    $time = time();
    $payload = [
        'iat' => $time,
        'exp' => $time + 3600,
        'iss' => $corpId
    ];
    $token = JWT::encode($payload, $secret);

    // envoyer HTTP demander
    $client = new Client(['base_uri' => 'https://qyapi.weixin.qq.com']);
    $response = $client->request('POST', '/cgi-bin/message/send', [
        'query' => ['access_token' => $token],
        'json'  => $data
    ]);

    $result = json_decode($response->getBody(), true);
    return $result['errcode'] === 0;
}

Appelez l'interface pour envoyer un message

Dans la logique commerciale réelle, l'interface peut être appelée au besoin:

 
// Exemple:envoyer消息
$touser = 'UserID1';
$content = 'Vous avez de nouvelles nouvelles,Veuillez le vérifier à temps。';
$result = sendMsg($touser, $content);

if ($result) {
    echo '消息envoyer成功';
} else {
    echo '消息envoyer失败';
}

Résumé et suggestions d'optimisation

Cet article présente comment implémenter la fonction d'abonnement du message de l'entreprise WeChat via PHP. Les développeurs peuvent optimiser davantage en fonction des besoins réels:

  • Ajout d'un mécanisme de capture d'exception
  • Prend en charge plus de types de messages tels que des images, des textes, des cartes, etc.
  • Combiné avec la base de données pour réaliser le contenu du message dynamique
  • Encapsulé comme bibliothèque de classe pour une réutilisation facile

Grâce à cette solution, les entreprises peuvent créer un système de notification de message interne efficace et fiable pour améliorer efficacement l'efficacité de la communication de l'information.