Bu rehberde, bir mesajdan ( 👍, 🚲 ve 🌞 gibi) bir tepkiyi silmek için Google Chat API'nin Reaction
kaynağında delete
yöntemini nasıl kullanacağınız açıklanmaktadır.
Tepki silmek mesajın silinmesine neden olmaz.
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 silmek için
chat.messages.reactions
veyachat.messages
yetkilendirme kapsamıyla kullanıcı kimlik doğrulaması gerekir.
Tepki silme
Bir mesajdaki tepkiyi silmek için isteğinizde aşağıdaki ifadeleri iletin:
chat.messages.reactions
veyachat.messages
yetkilendirme kapsamını belirtin.Reaction
kaynağındadelete
yöntemini çağırın.name
öğesini, silinecek tepkinin kaynak adına ayarlayın.
Aşağıdaki örnekte, bir mesajdaki 😀 tepkisi silinir:
Python
- Çalışma dizininizde
chat_reaction_delete.py
adlı bir dosya oluşturun. Aşağıdaki kodu
chat_reaction_delete.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"] def main(): ''' Authenticates with Chat API via user credentials, then deletes 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().delete( # The reaction to delete. # # 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. # # Replace REACTION with a reaction name. # Obtain the reaction name from the reaction resource of Chat API. name = 'spaces/SPACE/messages/MESSAGE/reactions/REACTION' ).execute() if __name__ == '__main__': main()
Bu kodda, aşağıdakini değiştirin:
SPACE
: Chat API'dekispaces.list
yönteminden veya bir alanın URL'sinden ulaşabileceğiniz bir alan adı.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.REACTION
: Chat API'dekispaces.messages.reactions.list
yönteminden veya Chat API ile eşzamansız olarak bir tepki oluşturduktan sonra döndürülen yanıt gövdesinden elde edebileceğiniz bir tepki adı.
Çalışma dizininizde örneği derleyin ve çalıştırın:
python3 chat_reaction_delete.py
Başarılı olursa yanıt gövdesi boş olur. Bu, tepkinin silindiğini gösterir.