Comments (4)
Sending CAPTCHA tokens to Signal works, the current problem I'm blocked by is that the URI generated by the Signal CAPTCHA page on https://signalcaptchas.org/registration/generate.html isn't a valid URI. This means when embedding the CAPTCHA webpage into the app I cannot handle any Navigation event correctly because the Windows APIs expect a valid URI. This also goes for URI protocol handling.
I've made a post on the Signal community forum. Hopefully Signal will consider making a change to their page. In the mean time I'll continue looking for a work around.
from signal-windows.
I've figured out an annoying but working workaround. Though the C# Uri constructor fails to parse the signalcaptcha
Uri, both a C++ or a Javascript UWP app can parse it fine (or at least don't throw an exception). With this knowledge here is the workaround.
- Create a Javascript UWP app and register
signalcaptcha
as a protocol. The Javascript app is here. Then run the app to ensure the app is registered on the system to handle thesignalcaptcha
protocol. - Open a WebView in Signal-Windows and let the user solve the CAPTCHA. Once they do that the page will redirect to the
signalcaptcha
Uri which will then cause the system to prompt the user to open the Javascript CAPTCHA app. - When the Javascript app gets launched by the protocol, extract the token from the Uri and pass the token back to Signal-Windows. There are many ways to share data between UWP apps but I've opted to use LaunchUriAsync.
- Since Signal-Windows is already open, when handling the protocol launch update the CAPTCHA token on the RegistrationPage.
The one major annoyance is that the user needs to install another app to get CAPTCHAs to work but I haven't found an in-app way of getting the signalcaptcha
redirect to work yet.
from signal-windows.
Support for this has been added in 2933a1e
from signal-windows.
Signal Windows 0.3.0 is in the store.
from signal-windows.
Related Issues (20)
- Avatar support? HOT 1
- Will there be further support for this project? HOT 1
- Fix Attachments on mobile HOT 4
- Windows store link is now expired HOT 2
- Bad response: 429 when call GetContacts HOT 4
- Crashed on adding contact on mobile HOT 1
- Push don't works on mobile HOT 15
- Incoming messages fail (debug log shows InvalidVersionException occured (Unsupported version!)) HOT 2
- Add ability to export background task log
- Nothing happens after linking HOT 8
- Create a Wiki page with instructions how to install Signal from Github HOT 2
- Contact color always reset back to original color HOT 2
- Image received not loading HOT 2
- I can not register (re-register?) HOT 2
- Registering for a new account does nothing HOT 6
- Does anyone knows how to implement Device linking? HOT 2
- Nothing Change After Device Linking HOT 2
- After registering goes back to setup page
- Invite link in README.md to test build on Microsoft Store is expired.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from signal-windows.