Eccolo qui.<br><br>scaricate il file<br><br><a href="http://www.artisopensource.net/BT.zip">http://www.artisopensource.net/BT.zip</a><br><br>e scompattatelo da qualche parte su un sistema Linux<br><br>vi troverete una directory con i file che corrispondono ad una distribuzioncina live del linux che usiamo per fare la comunicazione bluetooth.<br>
per i più tecnici: è un isolinux (quindi una immagine binaria di un filesystem linux) con un kernel vmlinuz su cui sono stati configurati dei moduli bluetooth abbastanza generali da non dare troppi problemi con le antennine più comuni. Se serve vi racconto come si installano altri moduli se avete hardware problematici.<br>
<br>a questo punto vogliamo guardare cose c&#39;è dentro il filesystem, quindi dobbiamo &quot;montarlo&quot; da qualche parte.<br><br>aprite una shell andate nella directory in cui avete scompattato il file e date questi comandi:<br>
<br>su -<br>(così diventate root del sistema, vi viene richiesta una password)<br><br>mkdir -p mtpoint<br>(create una directory &quot;mtpoint&quot;)<br><br>mount -o loop ccbtdemo mtpoint/<br>(montate il file &quot;ccbtdemo&quot;, che contiene l&#39;immagine binaria del filesystem, usando il device &quot;loop&quot;)<br>
<br>chmod 777 mtpoint<br>(così potete anche scriverci sopra)<br><br>a questo punto potete andare a curiosare dentro la directory &quot;mtpoint&quot; per vedere cosa c&#39;è nel filesystem.<br>Troverete la gerarchia di directory tipica di un sistema unix (bin, dev, etc, lib...). Questo è il sistema linux di cui farete il boot per il vostro media server bluetooth.<br>
<br>di tutti file e directory vi interessano un paio di cose.<br><br>1) i contenuti<br><br>i contenuti da distribuire li trovate nella directory:<br><br>/var/opt/ccobex<br>(ccobex è un insieme di protocolli e standard che descrivono il trasferimento di file e applicazioni su bluetooth)<br>
<br>dentro questa directory trovate una serie di cartelle che sono preimpostate su una serie di contenuti che avevo usato io per un paio di applicazioni.<br>Lo script che parte in automatico al boot del sistema usa queste directory per distribuire i contenuti. <br>
Chi è capace può modificare lo script (che è anche abbastanza semplice) e usare una struttura propria.<br>Chi non è capace può usare le directory come le ho impostate io, sostituendo i propri file, che verranno gestiti automaticamente dal sistema.<br>
<br>dentro questa directory ci sono le cartelle<br><br>&quot;coupons&quot;<br>&quot;download&quot;<br>&quot;inbox&quot;<br>&quot;selfile&quot;<br><br>dentro &quot;coupons&quot; ci sono dei file di testo che vengono mandati con un certo ritmo ai cellulari bluetooth che capitino a portata di antenna.<br>
I messaggi sono pensati per essere brevi-brevi, così da arrivare rapidamente ai cellulari.<br>Se voi aggiungete o modificate altri file in questa directory, verranno aggiunti a quelli inviati.<br><br>dentro la directory &quot;download&quot; ci sono i contenuti principali, divisi in cartelle, per tipo.<br>
Nella configurazione standard, i contenuti vengono distribuiti in 2 modalità: push e on demand.<br>La modalità push seleziona secondo una certa politica un file per volta (ad esempio casualmente) e lo invia ad un cellulare a portata di antenna, senza che questo abbia richiesto nulla.<br>
La modalità on-demand si attiva quando un cellulare invia un messaggio al nostro media server. Questa modalità si attiva quando da un cellulare si invia una parola chiave attraverso una vcard (come quando mandi un contatto dalla tua rubrica ad un altro telefono). Nel servizio standard, se mando &quot;video&quot;, mi viene rimandato indietro uno dei video contenuti nella cartella &quot;video&quot;, se mando &quot;image&quot;, una immagine, e così via.<br>
Se mando una parola chiave non riconosciuta, mi viene mandato indietro un messaggio di aiuto, che si trova nel file di testo &quot;Help.txt&quot;<br><br>le persone possono anche inviare file al nostro mediaserver. Questi file saranno messi nella directory &quot;inbox&quot;.<br>
<br>la directory &quot;selfile&quot; contiene alcuni script che implementano le politiche di selezione dei file da inviare. Ad esempio &quot;random&quot; sceglie un file casualmente, &quot;hour&quot; lo seleziona in base all&#39;ora del giorno, e così via. Se configurate altre politiche di selezione le potrete usare negli script che fanno l&#39;invio.<br>
<br>Nelle cartelle download trovate un po&#39; di file che avevo usato in una performance della Biodoll con Angel_F. Sostituiteci i vostri file e siete gi a buon punto.<br>Nella directory dei video ci trovate dei file &quot;.rm&quot;, come RealMedia, che fino a un certo tempo fa erano quelli più sicuri da mandare sui cellulari, per essere abbastanza certi che poi le persone potessero effettivamente vederli. Ora i tipi di video accettati dai cellulari sono aumentati di molto: potete provare con degli mp4 o con dei 3gp... insomma, fate le prove.<br>
<br>2) i servizi<br><br>qui si inizia ad andare sul tecnico. Per chi non ha già le competenze o il modo di studiare da sè, consiglio di usare la piattaforma così com&#39;è: sostituite i vosti contenuti come spiegato sopra, e andate al punto successivo, così potrete preparare il vostro mediaserver. Poi magari facciamo un workshoppetto anche per questo.<br>
<br>l&#39;invio dei contenuti è gestito tramite alcuni script.<br><br>la configurazione generale la trovate in alcuni file della directory /etc<br><br>se entrate nella directory &quot;/etc/bluetooth&quot; troverete un paio di file.<br>
<br>in particolare il file &quot;hcid.cof&quot; provvede alla configurazione del servizio bluetooth che, tra le altre cose, vi consente di configurare se accettare connessioni in ingresso, magari abilitate da un codice PIN<br>
<br>nella directory &quot;/etc/opt/ccobex&quot; trovate la configurazione vera e propria del servizio di distribuzione contenuti.<br><br>il file &quot;obexfile.conf&quot; descrive le directory dove sono messi i contenuti e la posizione nel filesystem degli script di base per la comunicazione bluetooth<br>
<br>il file &quot;obexpush.cfg&quot; descrive la posizione dello script di invio dei contenuti in modalità push<br><br>l file &quot;obexscan.conf&quot; descrive alcuni parametri che vengono usati per fare lo scan della rete bluetooth, per &quot;accorgersi&quot; di altri terminali presenti<br>
<br>Configurati i parametri, passiamo a dare un occhio ai file che eseguino il servizio (almeno nella versione standard che vi ho linkato). Questi si trovano nella directory &quot;/opt/checkcom/ccobex/bin&quot;<br><br>come vedrete, sono tutti script più o meno semplici che invocano i tre file binari (eseguibili compilati) che forniscono i servizi di base (indirizzamento, gestione dei file su canale bluetooth, gestione di transazioni/trasmissioni)<br>
<br>provate a giocarci e poi magari in un workshop ci giochiamo assieme.<br><br><br>3) mettere tutto insieme e spammare :)<br><br>siamo arrivati qui: <br><br>- scompattare il file<br>- montare il filesystem con i comandi descritti all&#39;inizio<br>
- mettere nelle directory dei contenuti i propri file (testi, immagini, video, suoni)<br><br>a questo punto si può rimettere tutto insieme.<br><br>per farlo bisogna compattare in un file gzip il filesystem binario.<br>Visto che lo abbiamo montato sul disco, ogni modifica che abbiamo apportato sarà riflessa anche sul binario (stiamo copiando/modificando/eliminando files dall&#39;immagine).<br>
<br>se nella directory su cui avete montato il filesystem è presente il file &quot;ccbtdemo.gz&quot;, cancellatelo, che è quello vecchio.<br><br>compattate il tutto con un bel <br><br>gzip ccbtdemo<br><br>A questo punto avete tutto.<br>
<br>Se avete un PC che fa il boot da una pennetta USB, mettete i seguenti file sulla pennetta medesima:<br><br>boot.cat<br>ccbtdemo.gz<br>isolinux.bin<br>isolinux.cfg<br>vmlinuz<br><br>sennò masterizzateli su un CD (assicuratevi che ci si possa fare il boot.. a volte dovete chiudere la sessione, sennò dà problemi).<br>
<br>ora spegnete il PC, collegate l&#39;antennina bluetooth, fate il boot dalla pennetta o CD e il tutto dovrebbe partire.<br><br>Il computer non va in modalità grafca (rimane il terminale di testo) e potete seguire sullo schermo quello che avviene (appena rilevate altri telefoni bluetooth, quando viene inviato o ricevuto un file, e così via)<br>
<br>il software e il sistema linux sono leggeri leggeri e sfoltiti di tutto, tranne quello che serve al servizio bluetooth, quindi potete usarlo su pc anche vecchi ed economici.<br><br>daje. :)<br><br>xDxD<br><br><br><br>
<br><br><br><br><br><br><br><br><br>