Skip to main content

Bom dia!

Estou criando um script para renovar os links dos históricos de conversas que a blip fornece através do requests http pelo metodo post. Utilizo no script os mesmos dados que uso no Postman, onde no Postman funciona normalmente e os links são renovados, mas no script apresenta o erro 62 “There’s no processor available for requested resource type”.

Segue abaixo código do script em python:

import json
import tkinter as tk
from tkinter import messagebox
import webbrowser

def renew_url():
    # Obter a URL digitada pelo usuário
    url = url_entry.get()

    # Montar o payload JSON com a URL fornecida
    payload = {'id': '{{$guid}}', 'method': 'set', 'uri': '/refresh-media-uri', 'type': 'text/plain', 'resource': url}
    # Configurar os cabeçalhos
    headers = {
        'authorization': 'Key fornecida pela blip',
        'content-type': 'application/json',
        'user-agent': 'BLiP'
        }

    #converte payload para json
    #payload_json = json.dumps(payload)
    #Enviar a requisição HTTP POST com os cabeçalhos
    response = requests.post('https://http.msging.net/commands', json=payload, headers=headers)
    #print(response)
    print(response.json())
    print(response.ok)
    #Verificar o código de status da resposta
    if response.status_code == 200:
        messagebox.showinfo('Sucesso', 'A URL foi renovada com sucesso.')
        # Abrir o link renovado no navegador
        webbrowser.open(url)
    else:
        messagebox.showerror('Erro', f'Ocorreu um erro ao renovar a URL. Código de status: {response.status_code}')

# Criar a janela
window = tk.Tk()
window.title('Renovar URL Take Blip')

# Criar a label e a entry para a URL
url_label = tk.Label(window, text='Digite aqui a URL que chegou no seu e-mail:')
url_label.pack()
url_entry = tk.Entry(window, width=50)
url_entry.pack()

# Criar o botão de renovar URL
renew_button = tk.Button(window, text="Renovar", command=renew_url)
renew_button.pack()

# Executar a janela principal
window.mainloop()
digite ou cole o código aqui

Agradeço desde já

Olá @Artur_John_dos_Santo tudo bem ?

Acho que tá dando erro por ausência do to ```
“to”: “[email protected]”,

corpo da request : 

{  
  "id": "{{$guid}}",
  "to": "[email protected]",
  "method": "set",
  "uri": "/refresh-media-uri",
  "type": "text/plain",
  "resource": "{{expiredMediaLinkUri}}"
}

Cara, muito obrigado, funcionou certinho!
vou concluir o processo agora para redirecionar no navegador para o link direto do resource gerado.
Gratidão!


para abrir o link renovado, basta inserir as seguintes linhas

    json_response = response.json()
    resultado = json_response.get('resource')

e na linha

webbrowser.open(url)

troca “url” por “resultado”

espero que isso ajude outros usuários!