@leg3ndy/otto-bridge 0.7.1 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -6
- package/dist/macos_whatsapp_helper_source.js +2 -0
- package/dist/types.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,12 +33,12 @@ Enquanto o pacote nao estiver publicado, voce pode gerar um tarball local:
|
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
35
|
npm pack
|
|
36
|
-
npm install -g ./leg3ndy-otto-bridge-0.7.
|
|
36
|
+
npm install -g ./leg3ndy-otto-bridge-0.7.2.tgz
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
No `0.7.
|
|
39
|
+
No `0.7.2`, `playwright` segue como dependencia obrigatoria no `otto-bridge`. O primeiro `npm install -g @leg3ndy/otto-bridge` pode demorar mais porque instala o browser persistente usado pelo WhatsApp Web e pelos fluxos web em background do bridge.
|
|
40
40
|
|
|
41
|
-
No macOS, o `0.7.
|
|
41
|
+
No macOS, o `0.7.2` passa a preferir o provider `macos-helper`, um helper `WKWebView` sem Dock para o WhatsApp Web. O helper agora sobe com user-agent de Chrome moderno para evitar o bloqueio do WhatsApp ao detectar Safari/WebKit. Se voce quiser forcar o runtime antigo com Chromium/Playwright, use `OTTO_BRIDGE_WHATSAPP_RUNTIME_PROVIDER=embedded-playwright`.
|
|
42
42
|
|
|
43
43
|
## Publicacao
|
|
44
44
|
|
|
@@ -108,7 +108,7 @@ otto-bridge run --executor clawd-cursor --clawd-url http://127.0.0.1:3847
|
|
|
108
108
|
|
|
109
109
|
### WhatsApp Web em background
|
|
110
110
|
|
|
111
|
-
Fluxo recomendado no `0.7.
|
|
111
|
+
Fluxo recomendado no `0.7.2`:
|
|
112
112
|
|
|
113
113
|
```bash
|
|
114
114
|
otto-bridge extensions --install whatsappweb
|
|
@@ -116,14 +116,29 @@ otto-bridge extensions --setup whatsappweb
|
|
|
116
116
|
otto-bridge extensions --status whatsappweb
|
|
117
117
|
```
|
|
118
118
|
|
|
119
|
-
O setup agora abre o login do WhatsApp Web
|
|
119
|
+
O setup agora abre o login do WhatsApp Web no helper/background browser do proprio bridge. Depois do QR code, o Otto usa a sessao local em background, sem depender de aba visivel no Safari.
|
|
120
120
|
|
|
121
|
-
Contrato do `0.7.
|
|
121
|
+
Contrato do `0.7.2`:
|
|
122
122
|
|
|
123
123
|
- `otto-bridge extensions --setup whatsappweb`: autentica a sessao uma vez
|
|
124
124
|
- `otto-bridge run`: mantem o browser persistente do WhatsApp vivo em background enquanto o runtime estiver ativo, sem depender de uma aba aberta no Safari
|
|
125
125
|
- ao parar o `otto-bridge run`: o browser em background e desligado, mas a sessao local fica lembrada para o proximo boot
|
|
126
126
|
|
|
127
|
+
## Handoff rapido do 0.7.2
|
|
128
|
+
|
|
129
|
+
Ja fechado no codigo:
|
|
130
|
+
|
|
131
|
+
- provider `macos-helper` dockless no macOS com fallback para `embedded-playwright`
|
|
132
|
+
- user-agent do helper ajustado para evitar bloqueio do WhatsApp por detecao de Safari/WebKit
|
|
133
|
+
- resultado final dos `device_job` agora e persistido como contexto mais forte para o proximo turno do Otto
|
|
134
|
+
- prompt bridge-aware no chat normal para ajudar o Otto a responder com base no que realmente aconteceu no device
|
|
135
|
+
|
|
136
|
+
Ainda precisa reteste em campo:
|
|
137
|
+
|
|
138
|
+
- fluxo completo do WhatsApp no helper `macos-helper`
|
|
139
|
+
- confirmacao de que o helper realmente passa do gate de compatibilidade do WhatsApp
|
|
140
|
+
- perguntas de follow-up como `o que voce mandou?` depois de uma acao local de mensagem
|
|
141
|
+
|
|
127
142
|
### Ver estado local
|
|
128
143
|
|
|
129
144
|
```bash
|
|
@@ -3,6 +3,7 @@ import Foundation
|
|
|
3
3
|
import WebKit
|
|
4
4
|
|
|
5
5
|
final class OttoWhatsAppHelper: NSObject, WKNavigationDelegate {
|
|
6
|
+
private static let chromeUserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36"
|
|
6
7
|
private let app = NSApplication.shared
|
|
7
8
|
private let window: NSWindow
|
|
8
9
|
private let webView: WKWebView
|
|
@@ -25,6 +26,7 @@ final class OttoWhatsAppHelper: NSObject, WKNavigationDelegate {
|
|
|
25
26
|
window.isReleasedWhenClosed = false
|
|
26
27
|
window.contentView = webView
|
|
27
28
|
webView.navigationDelegate = self
|
|
29
|
+
webView.customUserAgent = Self.chromeUserAgent
|
|
28
30
|
}
|
|
29
31
|
|
|
30
32
|
func run() {
|
package/dist/types.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export const BRIDGE_CONFIG_VERSION = 1;
|
|
2
|
-
export const BRIDGE_VERSION = "0.7.
|
|
2
|
+
export const BRIDGE_VERSION = "0.7.2";
|
|
3
3
|
export const BRIDGE_PACKAGE_NAME = "@leg3ndy/otto-bridge";
|
|
4
4
|
export const DEFAULT_API_BASE_URL = "http://localhost:8000";
|
|
5
5
|
export const DEFAULT_POLL_INTERVAL_MS = 3000;
|