-
 KDE-Apps.org Applications for the KDE-Desktop 
 GTK-Apps.org Applications using the GTK Toolkit 
 GnomeFiles.org Applications for GNOME 
 MeeGo-Central.org Applications for MeeGo 
 CLI-Apps.org Command Line Applications 
 Qt-Apps.org Free Qt Applications 
 Qt-Prop.org Proprietary Qt Applications 
 Maemo-Apps.org Applications for the Maemo Plattform 
 Java-Apps.org Free Java Applications 
 eyeOS-Apps.org Free eyeOS Applications 
 Wine-Apps.org Wine Applications 
 Server-Apps.org Server Applications 
 apps.ownCloud.com ownCloud Applications 
--
-
 KDE-Look.org Artwork for the KDE-Desktop 
 GNOME-Look.org Artwork for the GNOME-Desktop 
 Xfce-Look.org Artwork for the Xfce-Desktop 
 Box-Look.org Artwork for your Windowmanager 
 E17-Stuff.org Artwork for Enlightenment 
 Beryl-Themes.org Artwork for the Beryl Windowmanager 
 Compiz-Themes.org Artwork for the Compiz Windowmanager 
 EDE-Look.org Themes for your EDE Desktop 
--
-
 Debian-Art.org Stuff for Debian 
 Gentoo-Art.org Artwork for Gentoo Linux 
 SUSE-Art.org Artwork for openSUSE 
 Ubuntu-Art.org Artwork for Ubuntu 
 Kubuntu-Art.org Artwork for Kubuntu 
 LinuxMint-Art.org Artwork for Linux Mint 
 Arch-Stuff.org Art And Stuff for Arch Linux 
 Frugalware-Art.org Themes for Frugalware 
 Fedora-Art.org Artwork for Fedora Linux 
 Mandriva-Art.org Artwork for Mandriva Linux 
--
-
 KDE-Files.org Files for KDE Applications 
 OpenTemplate.org Documents for OpenOffice.org
 GIMPStuff.org Files for GIMP
 InkscapeStuff.org Files for Inkscape
 ScribusStuff.org Files for Scribus
 BlenderStuff.org Textures and Objects for Blender
 VLC-Addons.org Themes and Extensions for VLC
--
-
 KDE-Help.org Support for your KDE Desktop 
 GNOME-Help.org Support for your GNOME Desktop 
 Xfce-Help.org Support for your Xfce Desktop 
--
openDesktop.orgopenDesktop.org:   Applications   Artwork   Linux Distributions   Documents    LinuxDaily.com    Linux42.org    OpenSkillz.com   
 
Apps
News
Groups
Knowledge
Events
Forum
People
Jobs
Register
Login


Sponsoring


-
- Content .- Fans (1) .- Knowledge Base  . 

BlueamaroK

   0.53  

Amarok Script

Score 82%
BlueamaroK
zoom


BlueamaroK
zoom


BlueamaroK
zoom


Link:  Link
Downloads:  4832
Submitted:  Jan 3 2006
Updated:  Dec 10 2006

Description:

BlueamaroK controls basic functions of the amaroK player with a SonyEriccson mobile telephone through a bluetooth connection.

Dependencies:
Bluez - http://www.bluez.org/
Tcl - http://tcl.sourceforge.net/

Using:
Pair your PC and phone, run rfcomm to bind the connection to a serial device, for example /dev/rfcomm0, run BlueamaroK and go to the accessories menu (Connectivity > Accessories).

Binding example:
# hcitool scan
Scanning ...
00:0E:07:3E:58:0D Khertz
# rfcomm bind rfcomm0 00:0E:07:3E:58:0D 1

Permanent binding:
Edit /etc/bluetooth/rfcomm.conf adding:
rfcomm0 {
bind yes;
device 00:0E:07:3E:58:0D;
channel 1;
comment "Khertz T610";
}

I recommend to use the KDE Bluetooth Framework (http://kde-bluetooth.sourceforge.net/). In the KDE Bluetooth Framework homepage you'll find good documentation for configuring bluetooth.

Models supported:
- T68
- T86i
- T300
- T310
- T610
- Z600
- T230/T238/T226
- T630
- T290

Author:
Pablo Chinea
N.Cat




Changelog:

* Version 0.1 (03/01/2006)
- Initial Release.

* Version 0.5 (12/01/2006)
- Feature: Playlist listed in phone display.
- Feature: Select track to play from the phone.
- Feature: Added bitrate and sample rate in Track Info.
- Bugfix: Phone return an error when back button is pressed. FIXED
- Some texts changed
- Added more using information in the README

* Version 0.51 (13/01/2006)
- Bugfix: Script fail writing debug output. FIXED

* Version 0.52 (05/10/2006) by N.Cat
- Feature: Reconnect automatically.
- Feature: Improved menu, now just one Play/Pause entry.
- Feature: Show message and set status info on song change.
- Feature: Mark active song in playlist.
- Bugfix: Parsing fails when KDE applications output on stderr. FIXED
- Bugfix: Configuration can be corrupted. FIXED
- Bugfix: Infinite read loop if connection is lost. FIXED
- Bugfix: Menu is no longer displayed after certain errors. FIXED
- Bugfix: Error on long playlist items. FIXED
- Bugfix: Playlist item displayed strangely. FIXED

* Version 0.53 (10/12/2006)
- Bugfix: Incorrect title showed on song change. FIXED




LicenseGPL
Send to a friend
Subscribe
Other  Apps  from khertz
Report inappropriate content



goto page: prev   1  2  3  4  5 

-
.

 playlist + SE T610

 
 by pucek on: May 16 2006
 
Score 50%

There is problem with playlist browsing.

When I want to browse playlist with brackets (and probably other non alphanumeric characters - I didn't check) T610 returns an error.
example:

< - *EAMI: 10
- > AT*EASM="Playlist (388/434)",1,6,7,"","T- Wave - Reconstruction (Radio Version)","The Chemical Brothers - Galvanize","The Chemical Brothers - Hey Boy Hey Girl","The Crystal Method - Born Too Slow","The Discoboys - For You (Dub Mix)",""
< -
< - ERROR
- > AT*EAID=1,0,"BLUEAMAROK ERROR!\0APlease, send debug output to khertz\80gmail.com",0

If playlist items have no brackets everything is ok.


Reply to this

-

 Re: playlist + SE T6

 
 by khertz on: May 16 2006
 
Score 50%

Hello, there are no problem with the brackets, the problem is the lenght of the string sent to the phone, this is a knonw issue. The playlist is shown with 5 songs per page and when the songs titles are too long the script fail. :S


Reply to this

-
.

 Re: Re: playlist + SE T6

 
 by pucek on: May 17 2006
 
Score 50%

This can be true ;) I should check better :)

Can you do something to cut titles to "good" length?


Reply to this

-

 Re: Re: Re: playlist

 
 by khertz on: May 17 2006
 
Score 50%

I'm studying the way to generate the playlist with a variable number of songs per page, I don't want to cut the titles. But this bears to restate completely the way of creating the list


Reply to this

-

 How to control?

 
 by AceTheFace on: Sep 1 2006
 
Score 50%

Hi,

I have a K750i, started blueamarok and setted up the connection correctly. But I can't find within the menus the remote for amarok. Under "Entertainment" (Games etc.) I have a point "remote control" but it has only 3 entries: presentation, desktop, media player.
In the Connections-Bluetooth-Section the "Accessoires"-Point is disabled...any hints?


Reply to this

-
.

 Re: How to control?

 
 by khertz on: Sep 1 2006
 
Score 50%

This script was programmed for a T610 phone, and the k750i use a different AT commands set. The script isn't compabtible with this model and I can't migrate the script because I haven't a k750i. I'm sorry :-S.


Reply to this

-

 Script Freezes

 
 by matersci on: Sep 4 2006
 
Score 50%

Script works with my K700i but if I don't use it for a while it looses connection with the phone and stops responding. Any ideas?

And is it possible to make a script for kaffeine or Mplayer, so we can have full control of both audio and movie players?

Thanks


Reply to this

-

 Re: Script Freezes

 
 by khertz on: Sep 4 2006
 
Score 50%

Hello, I don't know how it looses connection. Check your phone configuraction or bluez configuration (maybe any energy saving). BlueamaroK works over a bluetooth conection, but not touch any connection parameter, it is controlled by the bluez stack.

BlueamaroK is based on a script called BlueKaffeine, also programmed by me, it's hosted in sourceforge:

http://sourceforge.net/projects/bluekaffeine/

but is in spanish :-P.


Reply to this

-

 Re: Re: Script Freez

 
 by matersci on: Sep 4 2006
 
Score 50%

I just saw that this bug has been mentioned before by mabs on 02/06/2006. In his comment he suggests a change to the script for disconnection and reconnection once a while. I think this could work.

And thanks for the link to bluekaffeine. I will check it, although I don't speak Spanish.


Reply to this

-

 Great Script

 
 by supercatfrog on: Oct 3 2006
 
Score 50%

Ive made a change to it, below, to show the current playing track, at the top of the menu. Ive also re-ordered the menu. I appologise for the nasty, hacky code, as I dont speak spanish, tcl or the 710's AT command set.

#!/usr/bin/tclsh
#######################################################################
#
# BlueamaroK - It controls basic functions of the amaroK Player with a
# SonyEriccson mobile telephone through a bluetooth connection.
#
# This script is released under GPL free license.
#
# Pablo Chinea
# ver. 0.51 - 13/01/2006
#
#######################################################################
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
#######################################################################

global CONFIGFILE
set CONFIGFILE "blueamarokrc"

#################
# Configuration #
#################
proc configurar {} {
global CONFIGFILE
global DISPOSITIVO
set outfile [open $CONFIGFILE w]
set DISPOSITIVO [ exec kdialog --inputbox "Serial device binded" "/dev/rfcomm0" --caption "BlueamaroK Configuration" ]
puts $outfile $DISPOSITIVO
close $outfile
}

######################
# Load configuration #
######################
proc cargar {} {
global CONFIGFILE
global DISPOSITIVO
if { [file exists $CONFIGFILE] } {
set infile [open $CONFIGFILE r]
set DISPOSITIVO [ gets $infile ]
close $infile
} else {
configurar
}
}

##########################
# Connect with the phone #
##########################
proc Conectar {} {
global DISPOSITIVO
global CANAL
if { [ catch { set CANAL [ open $DISPOSITIVO r+ ] } ] == 1 } {
exec kdialog --sorry "Error! Can't open $DISPOSITIVO device"
exit 1
}
fconfigure $CANAL -buffering none
fileevent $CANAL readable "Leer"
}

#######################################
# Capture the input send by the phone #
#######################################
proc Leer {} {
global CANAL
gets $CANAL entrada
puts stderr " $atcmd"
puts $CANAL $atcmd
}

#######################################
# Capture the commands sent by amaroK #
#######################################
proc iface {} {
gets stdin entrada
if { [ string match "configure" $entrada ] } {
configurar
}
}

###############################
# Execute an action in amarok #
###############################
proc action { cmd } {
exec dcop amarok player $cmd
}

###################################################
# Execute an action in amarok (with 2 parameters) #
###################################################
proc action2 { cmd1 cmd2 } {

exec dcop amarok player $cmd1 $cmd2
}

#######################
# Parsing phone input #
#######################
proc Parsear { cadena } {


global EST
global CONT
if { [ string match "OK" $cadena ] } {
global OK
set OK 1
}
if { [ string match "ERROR" $cadena ] } {
set EST 1
atsend "AT*EAID=1,0,\"BLUEAMAROK ERROR!\\0APlease, send debug output to khertz\\80gmail.com\",0"
vwait OK
vwait CONT
}
switch $EST {
0 {
if { [ string match "*EAAI" $cadena ] } {
set EST 1
kmenu 1
}
if { [ string match "*EAII: 0" $cadena ] } {
set CONT 1
}
}
1 {
if { [ string match "*EAMI*" $cadena ] } {
set val [ string range $cadena 7 end ]
if { $val != 0 } {
global MENU
eval [ lindex $MENU [ expr $val * 2 - 1 ] ]
kmenu $val
} else {
set EST 0
}
set LASTVAL $val
}
if { [ string match "*EAII*" $cadena ] } {
set CONT 1
}
}
2 {
if { [ string match "*EAII*" $cadena ] } {
if { [ string match "*EAII: 15*" $cadena ] } {
set val [ string range $cadena 10 end ]
action2 setVolume $val
} else {
set CONT 1
set EST 1
}
}
}
3 {
if { [ string match "*EAMI*" $cadena ] } {
set val [ string range $cadena 7 end ]
if { $val != 0 } {
global lista
global pag
if { ($pag != 0) } {
if { ($val == 1) } {
showplaylist -1 0
} elseif { ($val == 7) } {
showplaylist 1 0
} else {
exec dcop amarok playlist playByIndex [ expr $pag * 5 + $val - 2 ]
}
} else {
if { ( $val == 6 ) } {
showplaylist 1 0
} else {
exec dcop amarok playlist playByIndex [ expr $val - 1 ]
}
}
set CONT 1
}
set EST 1
set CONT 1
}
}
}
}

#######################
# Volume control menu #
#######################
proc volume {} {
global EST
set EST 2
set vol [ expr [ exec dcop amarok player getVolume ] / 10 ]
atsend "AT*EAID=4,2,\"Volume control\",10,$vol"
vwait CONT
}

########################
# Create the main menu #
########################
proc kmenu { sel } {


global MENU
set MENU {
"Next" "action next"
"Pause/Play" "action pause"

"Volume" volume
"Previous" "action prev"

"Backward" "action2 seekRelative -5"
"Forward" "action2 seekRelative 5"

"Mute" "action mute"
"Playlist" playlist
"Track Info" Info
"About" Acerca
}
## "Play" "action play"
## "Stop" "action stop"
set titulos ""
foreach { elem cmd } $MENU {
set titulos "$titulos,\"$elem\""
}
set long [ expr [ llength $MENU ] / 2 ]


set playing [ exec dcop amarok player title ]



set playing [ regexp -inline {\m.{1,11}$} $playing ]

#regsub -all {[^qwertyuiopasdfghjklzxcvbnm QWERTYUIOPASDFGHJKLZXCVBNM1234567890]} $playing "" playing


atsend "AT*EASM=\"$playing\",1,$sel,$long$titulos"
vwait OK


atsend "AT*EAST=\"$playing\""
atsend "AT*EAM=\"$playing\""



}

#########################
# Generate the playlist #
#########################
proc genlist { fich } {
set infile [open $fich r]
while { [ gets $infile cadena ] >= 0 } {
if { [ string match "* titulo
}
if { [ string match "**" $cadena ] } {
regexp "(.*)" [ string trim $cadena ] -> artista
}
if { [ string match "* 0 } {
set elem "$artista - $titulo"
} else {
set elem $titulo
}
lappend lista "$elem"
}
}
close $infile
return $lista
}

####################
# Get the playlist #
####################
proc playlist {} {
global EST
global lista
if { [ exec dcop amarok playlist getTotalTrackCount ] == 0 } {
atsend "AT*EAID=1,0,\"Playlist empty\",20"
vwait OK
vwait CONT
} else {
set EST 3
set lista [ genlist [ exec dcop amarok playlist saveCurrentPlaylist ] ]
exec dcop amarok playlist shortStatusMessage "Default Playlist saved by BlueamaroK"

set pos [ exec dcop amarok playlist getActiveIndex ]
global pag
if { $pos == -1 } {
set pag 0
set offset 0
} else {
set pag [ expr $pos / 5 ]
set offset [ expr $pos % 5 + 1 ]
}
showplaylist 0 $offset
}
}

##########################
# Show the playlist menu #
##########################
proc showplaylist { inc offset } {
global lista
global pag

set pag [ expr $pag + $inc ]

set longit [ llength $lista ]
set ini [ expr $pag * 5 ]
if { [ expr ($longit - 1) / 5 ] == $pag } {
set fin [ expr $longit - 1 ]
} else {
set fin [ expr $ini + 4 ]
}

set titulos ""
set long [ expr $fin - $ini + 1 ]

if { $offset } {
set sel $offset
} else {
set sel 1
}

if { $pag != 0 } {
set titulos "$titulos,\"\""
set long [ expr $long + 1 ]
set sel [ expr $sel + 1 ]
}

foreach elem [ lrange $lista $ini $fin ] {
set titulos "$titulos,\"$elem\""
}


if { [ expr ($longit - 1) / 5 ] != $pag } {
set titulos "$titulos,\"\""
set long [ expr $long + 1 ]
}

set npag [ expr $pag + 1 ]
set tpag [ expr ($longit - 1) / 5 + 1 ]

atsend "AT*EASM=\"Playlist ($npag/$tpag)\",1,$sel,$long$titulos"
vwait CONT
}

##########################
# Show track information #
##########################
proc Info {} {
set nombre [ exec dcop amarok player nowPlaying ]
set duracion [ exec dcop amarok player totalTime ]
set info "* $nombre\\0A* $duracion"

set bitrate [ exec dcop amarok player bitrate ]
set samplerate [ expr [ exec dcop amarok player sampleRate ] / 1000 ]
set info "$info\\0A* $bitrate - $samplerate Hz"

set fichero [ exec dcop amarok player path ]
if { [ file readable $fichero ] == 1 } {
set tipo [ string trim [ exec file $fichero | cut -d: -f2 ] ]
set info "$info\\0A* $tipo"
}
atsend "AT*EAID=14,2,\"Track Info\",\"$info\""
vwait CONT
}

#######################
# Show "About" dialog #
#######################
proc Acerca {} {
set a_pro "* BlueamaroK ver. 0.51"
set a_aut "* Pablo Chinea "
set a_web "* http://www.khertz.net/"
set a_lic "* This script is released under GPL free license."
set acerca "$a_pro\\0A$a_aut\\0A$a_web\\0A$a_lic"
atsend "AT*EAID=14,2,\"About\",\"$acerca\""
vwait CONT
}

#############################
# Initialize the connection #
#############################
proc IniCon {} {
atsend "ATZ"
vwait OK
atsend "ATE=0"
vwait OK

#title for menu
atsend "AT*EAM=\"Amarok\""
vwait OK
atsend "AT*EAID=1,0,\"Connected to Amarok\",20"
vwait OK
vwait CONT
atsend "AT*EAST=\"Amarok\""
vwait OK
}




#################
# Main function #
#################
proc main {} {
global EST
set EST 0
cargar
Conectar
IniCon
fileevent stdin readable "iface"
vwait BUCLEINF
}

main


Reply to this

-

 Problems :(

 
 by dennism on: Oct 16 2006
 
Score 50%

When running the BlueAmarok-script I see on my W800i phone that the computer connects to the phone. But I don't get any new menus in Amarok.

The log says:
http://www.demaweb.dk/ba.txt

Can anybody tell me, that the problem are? Maybe the script works and I don't know how to use the Script?

I'm running Ubuntu.


Reply to this

-

 Re: Problems :(

 
 by khertz on: Oct 16 2006
 
Score 50%

Sorry, the script is not compatible with W800i, because this phone use a different AT instrutions set. Blueamarok only supports T68, T68i, T300, T310, T610, Z600,
T230/T238/T226, T630 and T290 models.


Reply to this

-

 Re: Re: Problems :(

 
 by motin on: Nov 13 2006
 
Score 50%
motinmotin
DigitalSteam Consulting
Home

It works great with Z800i (also known as V800) - at least 0.52 does, I got 0.51 to work only once back then.

THANKS FOR MAKING AND SHARING THIS AWESOME SCRIPT!


http://www.motin.eu
http://www.digitalsteam.se
http://www.demomusic.nu

Reply to this

-

 How to pair?

 
 by dennismdk on: Nov 14 2006
 
Score 50%

How can i pair my W800i and Linux SuSE 10.1 with Gnome?


Reply to this

goto page: prev   1  2  3  4  5 

Add commentBack






-
-
Do you like or dislike Ubuntu Unity?
 Yes, unity is alien technology!
 It is less confusing than Gnome 3 default, shell.
 Granny thinks it is much more usable than Gnome 2
 Canonical is embarrasing itself with this split project
 Gnome 3 default shell is much better
 I dislike Unity, Gnome 3 default shell is alien technology!
 None of the above, I like the 2Gb for free and Apple alike behavior. Will post a comment instead

resultmore
 
 
 Who we are
Contact
More about us
Frequently Asked Questions
Register
Twitter
Blog
Explore
Apps
Jobs
Knowledge
Events
People
Updates on identi.ca
Updates on Twitter
Facebook App
Content RSS   
Events RSS   

Participate
Groups
Forum
Add App
Public API
About KDE-Apps.org
Legal Notice
Spreadshirt Shop
CafePress Shop
Advertising
Sponsor us
Report Abuse
 

Copyright 2003-2014 KDE-Apps.org Team  
All rights reserved. KDE-Apps.org is not liable for any content or goods on this site.
All contributors are responsible for the lawfulness of their uploads.
KDE and K Desktop Environment are trademarks of KDE e.V.