尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证App local-first que bloquea las llamadas de números 600 y 809 en Chile.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗App local-first con una sola función: bloquear las llamadas entrantes de números 600 y 809 en Chile. Para iPhone y Android.
Sitio: https://chao600.com · App Store: https://apps.apple.com/cl/app/chao-600/id6820609522 · Google Play: https://play.google.com/store/apps/details?id=cl.urcalab.chao600
android/ App Android (Kotlin + Compose) y ficha de Google Play
ios/ App iOS (SwiftUI + Call Directory Extension) y sus verificaciones
site/ chao600.com: public/ (HTML estático) y wrangler.jsonc (Cloudflare)
contenido/ Marca, comentarios de redes sociales y videos
En android/ está la versión Android (Kotlin + Compose, mín. Android 10). Usa un CallScreeningService, que sí permite bloquear por patrón: no hay listas de millones de números. Bloquea 600 XXX XXXX y 809 XXX XXX en formato +56, 56 o nacional, no pide ningún permiso y guarda el registro de bloqueadas solo en el teléfono. Una sola pantalla: estado, prefijos, números siempre permitidos y registro.
cd android && ./gradlew testDebugUnitTest installDebug
Para publicar en Play Store, ver android/store/LISTING.md.
ios/Chao600/ App (SwiftUI): estado, interfaz, recargas de la extensión
ios/CallDirectory/ Call Directory Extension: agrega una tanda por recarga
ios/Shared/ Código de ambos targets: plan de números, estado compartido, manifiesto de privacidad
ios/Config/ Info.plist y entitlements
ios/scripts/ Verificaciones
iOS no deja bloquear por patrón. Una Call Directory Extension (CallKit) necesita la lista completa de números, así que Chao 600 los lista todos:
| Prefijo | Formato | Números | Rango en CallKit |
|---|---|---|---|
| 809 (telemarketing no solicitado) | 809 XXX XXX | 1.000.000 | 56809000000 – 56809999999 |
| 600 (comerciales) | 600 XXX XXXX | 10.000.000 | 566000000000 – 566009999999 |
loaded.json) y la configuración (settings.json) viven en el contenedor del App Group, escritos de forma atómica para que app y extensión siempre lean lo último.id del plan: la extensión los quita de la lista ya cargada (removeBlockingEntry) o los saltea al cargar la tanda que los contiene, sin recargar los 11M. Quitar uno de la lista lo vuelve a bloquear.open ios/Chao600.xcodeproj37AKWW8NZ2). Con firma automática, Xcode registra los bundle IDs cl.urcalab.chao600 y cl.urcalab.chao600.CallDirectory y el App Group group.cl.urcalab.chao600.El simulador no tiene bloqueo de llamadas: ahí la app muestra "iOS no respondió (código 0)". Hay que probar en un iPhone.
Cambia el equipo y los identificadores por los tuyos:
DEVELOPMENT_TEAM y PRODUCT_BUNDLE_IDENTIFIER en el proyecto (la extensión debe ser <bundle de la app>.CallDirectory).ios/Config/*.entitlements y en SharedState.appGroup.ios/scripts/check-plan.sh
Comprueba los rangos y simula el protocolo app ↔ extensión ↔ CallKit con recargas fallidas, recargas completas iniciadas por iOS y cambios de configuración: CallKit siempre termina con exactamente los números del plan, sin duplicados.
El sitio no tiene build: Cloudflare sirve la carpeta site/public/ tal cual en https://chao600.com (configuración en site/wrangler.jsonc).
cd site && npx wrangler deploy
contenido/marca/make-logo.py genera el logo, el ícono de la app iOS, los favicons del sitio y la imagen para redes desde un solo diseño, con la tipografía Nunito Black (SIL OFL) convertida a trazos. Necesita pip install fonttools y brew install librsvg imagemagick.
Los comentarios de redes sociales y los videos están descritos en contenido/README.md.
MIT. Ver LICENSE.