Mopidy Discourse

Chromium on-screen keyboard in Iris search field

Hi all,

this is my first post on this Discourse board, so please don’t mind if I am struggling with bringing all the info together. Thanks for this brilliant piece of software. My question below is mainly focused on the Iris-Extension, so if it’s better to continue the discussion on the Github repo, then please feel free to tell me.

I built a music player for my son based on a 7" touchscreen running Chromium in kiosk mode and based on Mopidy and Iris. As source, I am using Spotify (i.e. the Mopidy-Spotify extension). Currently, the system has been set up using the “RPi-Jukebox-RFID” package but I had installed “bare” Mopidy and Iris beforehand with the same result.

Owing to the touchscreen, I figured it would a good idea to use an on-screen keyboard (OSK) installed as Chromium extension (the ones from Chromium do neatly integrate, automatically pop-up, etc.). However, when I try to search titles using the Search field in Iris, the Enter button seems not to work correctly.

After pushing the enter button on the OSK, the URL changes to …/iris/search/all/ and the search stays empty. Using a USB keyboard, a web client from another device (mobile, laptop) and even the “normal” OSKs like Matchbox, Florence work like a charm. In fact, if I use the USB keyboard to enter one character of the search string and then finalize the search using the OSK “enter” button, then the search also works without any problems.

I tried to log Mopidy, but didn’t see any actions in it related to the search. I then tried to activate Test Mode in Iris and checked the Chromium console. I would love to post the results here, but I am struggling to find chromium debug file (started Chromium using --enable-logging, but the debug-log file is not in the .config folder for some reason, will try to hook up the RPi to a proper setup with screen and keyboard later).

Cheers and many thanks to all the people keeping this nice project up!
Christian

Appendix: Config and Hardware

Versions:

  • Chromium 86.0.4240.197
  • Touch Kiosk Keyboard 1.11.3
  • IRIS: 3.56.1
  • Mopidy: 3.1.1

Hardware

  • Raspberry Pi 4, 2 GB
  • 7" Touchscreen
  • Official RPi Power Supply

Mopidy Config

ERROR    [MainThread] mopidy.internal.log Loading logging config '/etc/mopidy/logging.conf' failed. 'formatters'
[core]
cache_dir = /var/cache/mopidy
config_dir = /etc/mopidy
data_dir = /var/lib/mopidy
max_tracklist_length = 10000
restore_state = false

[logging]
verbosity = 0
format = %(levelname)-8s [%(threadName)s] %(name)s %(message)s
color = false
config_file = /etc/mopidy/logging.conf

[audio]
mixer = software
mixer_volume = 30
output = alsasink
buffer_time = 

[proxy]
scheme = 
hostname = 
port = 
username = 
password = 

[file]
enabled = true
media_dirs = 
  $XDG_MUSIC_DIR|Music
  ~/|Home
excluded_file_extensions = 
  .directory
  .html
  .jpeg
  .jpg
  .log
  .nfo
  .pdf
  .png
  .txt
  .zip
show_dotfiles = false
follow_symlinks = false
metadata_timeout = 1

[http]
enabled = true
hostname = 0.0.0.0
port = 6680
zeroconf = Mopidy HTTP server on $hostname
allowed_origins = 
csrf_protection = true
default_app = mopidy

[m3u]
enabled = true
base_dir =
default_encoding = UTF-8
default_extension = .m3u
playlists_dir = /home/pi/RPi-Jukebox-RFID/playlists

[softwaremixer]
enabled = true

[stream]
enabled = true
protocols = 
  http
  https
  mms
  rtmp
  rtmps
  rtsp
metadata_blacklist = 
timeout = 5000

[muse]
enabled = true
mopidy_host = 
mopidy_port = 
mopidy_ssl = false
snapcast_host = 
snapcast_port = 
snapcast_ssl = false

[iris]
enabled = true
country = DE
locale = de_DE
spotify_authorization_url = https://jamesbarnsley.co.nz/iris/auth_spotify.php
lastfm_authorization_url = https://jamesbarnsley.co.nz/iris/auth_lastfm.php
genius_authorization_url = https://jamesbarnsley.co.nz/iris/auth_genius.php
data_dir = $XDG_DATA_DIR/iris

[spotify]
enabled = true
username = chepp83@gmail.com
password = ********
client_id = 517c4aba-d1e8-43eb-9cb5-796dbae5195c
client_secret = ********
bitrate = 160
volume_normalization = true
private_session = false
timeout = 10
allow_cache = true
allow_network = true
allow_playlists = true
search_album_count = 20
search_artist_count = 10
search_track_count = 50
toplist_countries = 

[mpd]
enabled = true
hostname = 0.0.0.0
port = 6600
password = 
max_connections = 20
connection_timeout = 60
zeroconf = Mopidy MPD server on $hostname
command_blacklist = 
  listall
  listallinfo
default_playlist_scheme = m3u

[local]
enabled = true
max_search_results = 100
media_dir = /home/pi/RPi-Jukebox-RFID/shared/audiofolders
scan_timeout = 1000
scan_flush_threshold = 100
scan_follow_symlinks = false
included_file_extensions = 
excluded_file_extensions = 
  .conf
  .jpg
  .txt
  placeholder
directories = 
  Albums                  local:directory?type=album
  Artists                 local:directory?type=artist
  Composers               local:directory?type=artist&role=composer
  Genres                  local:directory?type=genre
  Performers              local:directory?type=artist&role=performer
  Release Years           local:directory?type=date&format=%25Y
  Tracks                  local:directory?type=track
  Last Week's Updates     local:directory?max-age=604800
  Last Month's Updates    local:directory?max-age=2592000
timeout = 10
use_artist_sortname = false
album_art_files = 
  *.jpg
  *.jpeg
  *.png

/iris/search/all/ is the URL you get if you just press enter without typing anything in the search box, so it sounds like it isn’t recognising the input into that box for some reason.