Bu kılavuzda, bir mesaja 👍, 🚲 ve 🌞 gibi tepki eklemek için Google Chat API'nin Reaction
kaynağında create
yöntemini nasıl kullanacağınız açıklanmaktadır.
Reaction
kaynağı, kullanıcıların mesajlara tepki vermek için kullanabileceği 👍, 🚲 ve 🌞 gibi bir emojiyi temsil eder.
Ön koşullar
Python
- Python 3.6 veya sonraki sürümler
- pip paket yönetimi aracı
Python için en yeni Google istemci kitaplıkları. Bunları yüklemek veya güncellemek için komut satırı arayüzünüzde aşağıdaki komutu çalıştırın:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Google Chat API'nin etkinleştirildiği ve yapılandırıldığı bir Google Cloud projesi Adımlar için Google Chat uygulaması oluşturma başlıklı makaleyi inceleyin.
Chat uygulaması için yetkilendirme yapılandırıldı. Tepki oluşturmak için
chat.messages.reactions.create
,chat.messages.reactions
veyachat.messages
yetkilendirme kapsamıyla kullanıcı kimlik doğrulaması gerekir.
Mesaja tepki ekleme
Bir mesaja tepki oluşturmak için isteğinizde aşağıdakileri iletin:
chat.messages.reactions.create
,chat.messages.reactions
veyachat.messages
yetkilendirme kapsamını belirtin.Reaction
kaynağındacreate
yöntemini çağırın.- Tepki verilecek mesajın kaynak adına
parent
değerini ayarlayın. body
öğesini (istek gövdesi)Reaction
alanının bir örneğine ayarlayın. Bu örnekteunicode
alanı, unicode dizesiyle temsil edilen standart emojidir.
Aşağıdaki örnek, 😀 emojisiyle mesaja tepki veriyor:
Python
- Çalışma dizininizde
chat_reaction_create.py
adlı bir dosya oluşturun. Aşağıdaki kodu
chat_reaction_create.py
bölümüne ekleyin:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.messages.reactions.create"] def main(): ''' Authenticates with Chat API via user credentials, then creates a reaction to a message. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().messages().reactions().create( # The message to create a reaction to. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MESSAGE with a message name. # Obtain the message name from the response body returned # after creating a message asynchronously with Chat REST API. parent = 'spaces/SPACE/messages/MESSAGE', # The reaction to the message. body = { 'emoji': { # A standard emoji represented by a unicode string. 'unicode': '😀' } } ).execute() # Prints details about the created reaction. print(result) if __name__ == '__main__': main()
Bu kodda, aşağıdakini değiştirin:
SPACE
: Mesajın yayınlandığı alanınname
değeri. Chat API'dekispaces.list
yönteminden veya alanın URL'sinden bu bilgiye ulaşabilirsiniz.MESSAGE
: Chat API ile eşzamansız olarak bir mesaj oluşturduktan sonra döndürülen yanıt gövdesinden veya oluşturma sırasında mesaja atanan özel adla alabileceğiniz mesaj adıdır.
Çalışma dizininizde örneği derleyin ve çalıştırın:
python3 chat_reaction_create.py
Chat API, oluşturulan tepkinin ayrıntılarını içeren bir Reaction
örneği döndürür.